package com.iglooit.components.gui.abstract
{
	
	/**
	 * 
	 * @author Nicholas
	 * @date 2010-04-21
	 * the interface of all xmlcomponent
	 */
	public interface IXMLComponent
	{
		/**
		 * 
		 * @return xml node
		 */
		function get xml():XML;
		/**
		 * 
		 * @param value xml node
		 */
		function set xml(value:XML):void;
		
		/**
		 * 
		 * @param value the attributes object
		 * the formate will like this:
		 * { p1:value1, p2:value2}
		 */
		function set attributes(value:Object):void;
		
		/**
		 * save all changes into xml file
		 * 
		 */
		function submit():void;
		
		/**
		 * 
		 * @param value value of node
		 * the xml node's formate would be like this:
		 * <{nodeName}>{nodeValue}</{nodeName}>
		 */
		function set nodeValue(value:String):void;
		function set nodeName(value:String):void;
	}
}